import MyRequest from '@/utils/request/index'

class User {
  // userAccountLogin({ account, password }) {
  //   return MyRequest.post({
  //     url: '/login',
  //     data: { account, password }
  //   })
  // }

  // userMobileLogin({ account, password }) {
  //   return MyRequest.get({
  //     url: '/login',
  //     data: { account, password }
  //   })
  // }

  // userMobileLoginMsg(mobile) {
  //   return MyRequest.get({
  //     url: '/login/code',
  //     params: { mobile }
  //   })
  // }

  // userQQLogin(unionId, source = 1) {
  //   return MyRequest.post({
  //     url: `/login/social`,
  //     data: { unionId, source }
  //   })
  // }

  // userQQBindCode(mobile) {
  //   return MyRequest.get({
  //     url: `/login/social/code`,
  //     params: { mobile }
  //   })
  // }

  // userQQBindLogin({ unionId, mobile, code }) {
  //   return MyRequest.post({
  //     url: `/login/social/bind`,
  //     data: { unionId, mobile, code }
  //   })
  // }

  // userAccountCheck(account) {
  //   return MyRequest.get({
  //     url: `/register/code`,
  //     params: { account }
  //   })
  // }

  // userQQPatchCode(mobile) {
  //   return MyRequest.get({
  //     url: `/register/code`,
  //     params: { mobile }
  //   })
  // }

  // userQQPatchLogin({ unionId, mobile, code, account, password }) {
  //   return MyRequest.post({
  //     url: `/login/social/${unionId}/complement`,
  //     data: { unionId, mobile, code, account, password }
  //   })
  // }
  /**
   * 帐号密码登录
   * @param {String} account - 帐号
   * @param {String} password - 密码
   * @returns promise
   */
  userAccountLogin = ({ account, password }) => {
    return MyRequest.post({
      url: '/login',
      data: { account, password }
    })
  }

  /**
   * 获取手机号的短信验证码
   * @param {String} mobile - 手机号
   * @returns promise
   */
  userMobileLoginMsg = (mobile) => {
    return MyRequest.get({
      url: '/login/code',
      params: { mobile }
    })
  }

  /**
   * 手机号登录
   * @param {String} mobile - 手机号
   * @param {String} code - 短信验证码，默认123456
   * @returns promise
   */
  userMobileLogin = ({ mobile, code }) => {
    return MyRequest.post({
      url: '/login/code',
      data: { mobile, code }
    })
  }

  /**
   * QQ登录
   * @param {String} unionId - QQ唯一标识，openId
   * @param {String} source - 客户端类型 1 PC
   * @returns
   */
  userQQLogin = (unionId, source = 1) => {
    return MyRequest.post({
      url: '/login/social',
      data: { unionId, source }
    })
  }

  /**
   * 获取QQ绑定的时候短信验证码
   * @param {String} mobile - 手机号
   * @returns promise
   */
  userQQBindCode = (mobile) => {
    return MyRequest.get({
      url: '/login/social/code',
      params: { mobile }
    })
  }

  /**
   * QQ登录-绑定帐号
   * @param {String} unionId - QQ唯一标识，openId
   * @param {String} mobile - 手机号
   * @param {String} code - 验证码
   * @returns
   */
  userQQBindLogin = ({ unionId, mobile, code }) => {
    return MyRequest.post({
      url: '/login/social/bind',
      data: { unionId, mobile, code }
    })
  }

  /**
   * 校验用户是否存在
   * @param {String} account - 帐号
   * @returns promise
   */
  userAccountCheck = (account) => {
    return MyRequest.get({
      url: '/register/check',
      params: { account }
    })
  }

  /**
   * 获取QQ完善信息的时候短信验证码
   * @param {String} mobile - 手机号
   * @returns promise
   */
  userQQPatchCode = (mobile) => {
    return MyRequest.get({
      url: '/register/code',
      params: { mobile }
    })
  }

  userQQPatchLogin = ({ unionId, mobile, code, account, password }) => {
    return MyRequest.post({
      url: `/login/social/${unionId}/complement`,
      data: { unionId, mobile, code, account, password }
    })
  }
}

export default new User()
